iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 1
2

阿,如果當初知道這個的話就好了

開場白

想直接進入正題的人可以跳到主題介紹

大家或多或少應該都有看過這篇教大家如何選擇語言的文章吧
如何選擇程式語言?
想當初自己在學程式語言的時候就是按照這個來找自己要學哪個程式語言
只是想找一個語言來做爬蟲跟一些日常的計算工作
最終落腳於python

當時什麼都不懂,框架,平台,開源都還不清楚就直接上youtube去找python教學了
一開始都很正常的在學變數,型別,方法宣告,直到學到第五堂課左右的時候開始教Django
然後教學開始介紹各種路由,ip等等之類似懂非懂的概念
一直到我把基本網站架起來之後才知道

啊,我找錯教學了

這不是我要的

我只想要一個可以有畫面可以配合做出程式邏輯的語言,不需要網路行為
之後又學了一陣子的js配合前端寫網頁版程式(拿來單機使用的)
後來又跳去C#,畢竟VirtualStudio在windows生態相當良好
但又過於良好,導致我被包在舒適圈好長一段時間
我甚至不需要知道如何使用終端機就可以完成一支程式,還自以為自己獨自完成了畫面跟程式的運作,是一個全端工程師
直到我發現只有VirtualStudio可以這麼做,甚至只能這麼做

後來下定決心要學好程式語言,把自己的桌機換成linux桌面版(逼自己離開VirtualStudio)
因為公司是使用windows,因此我需要找跨平台的語言
然後發現好像只有C#沒辦法跨平台(當時dotnet Core還沒完全起來)
為了測試我對各種語言的向性,而且也還不知道docker,因此在自己的電腦上安裝了一堆語言
最終落腳於golang
然後慢慢摸索如何使用各種linux指令,git版本控制,
而且因為github的桌面版在linux中沒辦法使用,只能乖乖打指令
也養成了用指令控制電腦的習慣,也面對了以前不敢面對的終端機

現在想想當初也走了不少冤枉路
所以才想寫一篇阿,如果當初知道這個的話就好了的文章
讓跟當初的我有一樣需求的人可以不必再走一次我當初走錯的路

主題介紹

這篇主要的客群有兩種人

  1. 還沒決定自己要選哪一種語言的人
  2. 想學習新語言,但是還沒有決定要選哪一個語言的人

主要會分成三大部份

  • 主流語言
  • 次主流語言
  • 排名沒那麼前面但有特殊用途的語言

中間會穿插一些工具跟概念

我會展示每一種語言的基本語法跟一些語言摘要,但是千萬不要認為學會語法後就熟悉了這門語言
我的教學大概只能讓你看清這個語言的大門長什麼樣子,甚至都還沒有走上去按門鈴

十進位與十六進位的轉換

是我會帶大家寫的程式,藉此告訴大家如何寫各種語言的基本語法
因此最初帶大家安裝並設定完基本工具後會介紹十進位跟十六進位的差異及轉換方式
這部份如果已經熟悉的高手可以跳過

C#

是我會使用來做程式最基本概念的語言,
所以除非是對程式語言已經相當熟悉並且對C#沒有興趣的同學,否則我不建議你跳過這篇
框架使用跨平台的dotnetCore,對.NET跨平台寫法的人也可以參考

python

是我第二個會介紹的語言
是跟第一種語言完全相反直譯式動態型別語言,我會用此介紹直譯式跟編譯式語言的差異
這也是目前主流兩種讓程式執行的方式,如果是其中一邊的使用者想嘗試另一邊的語言我希望你可以兩篇都看

docker

是我們會介紹的第一個大型工具
如果你想嘗試多種語言又不想在自己電腦上安裝這麼多程式語言的話可以使用這個工具
但如果不會安裝或是使用上有困難也不必擔心
我們所有的教學都可以不使用docker來達成(當然docker這篇除外)

第一天小結

在這幾天中你可以學到什麼

  • 十進位與十六進位的互相轉換方式
  • 終端機的使用(不用擔心自己完全沒用過會怎麼樣,我們只會用到基本功能)
  • linux的簡單指令,不用擔心需要安裝虛擬機的linux,我們只會在docker內使用
  • 各種程式語言
  • 輔助你工作的小工具
  • 物件導向概念
  • git的基本使用
  • 幾種常見型別介紹

在這幾天中你不會學到什麼

  • 各種語言及工具的安裝流程,因為每一種都需要花掉一篇的篇幅,而且網路上已經一堆教學了,所以跳過
  • linux的深度控制指令,我們只會用到基本的切換目錄跟建立檔案
  • 各種神一般的git技巧,我們最多教到切branch
  • 記憶體控制技巧,我們頂多學到指標的基本使用
  • 如何寫桌面程式,每種語言與之配合的GUI都不同,你應該在挑選完自己想深入的語言後才去選擇要使用哪種框架,這裡我們建立的程式都活在終端機裡面
  • 深度學習,AI之類的高階程式語言演算法,每一種開一次30天的課程可能都不夠,我們不會學到那裡去
  • 如何成為新世界的神

明天我們先來安裝一些基本工具跟使用方式


下一篇
基本工具
系列文
你會十五種程式語言?不,我會十五種HelloWorld.為了避免這種狀況,因此寫了這篇:淺入淺出十五種程式語言30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
小碼農米爾
iT邦高手 1 級 ‧ 2020-09-03 22:38:09

可惡!! 想學習如何成為新世界的神。

我要留言

立即登入留言